package com.zhuangjie.security.annotations;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 接口标注后，只会认证颁发token的模块是否与要求的符合
 * @author zhuangjie
 * @date 2023/09/21
 */
@Target({ElementType.METHOD,ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface PublicAPI {
    /**
     * 传入模块名或模块名AntPathMatcher字符串匹配规则
     * 如果没有指定模块，那么所有模块都可以访问（需要认证token）
     * @return
     */
    String[] modules() default {"**"};

//    /**
//     * 是否内部调用接口
//     * 如果为true,那需要token且token对象id必须为空
//     * @return
//     */
//    boolean internalCall() default false;
}
